
/**
 * 发送GET异步请求
 * @param {String}   url       请求地址
 * @param {String}   params    请求参数
 * @param {Function} callback  回调函数
 * @param {Object}   headers   请求头
 * @param {Stirng}   dataType  返回的数据类型
 */
function get(url, params, callback, headers = {}, dataType = 'json')
{

    const xhr = new XMLHttpRequest

    xhr.onreadystatechange = () => {
   
        if (xhr.readyState === 4)
        {
  
            if (xhr.status === 200)
            {

                let res = xhr.responseText
                switch (dataType) {
                    case 'json':
                        res = JSON.parse(res)
                        break;
                   
                    default:
                        break;
                }

                callback(res)
            } else {
                console.log('错误状态：', xhr.status);
            }
        }
    }

    xhr.open('get', `${url}?${params}`)

    for (let key in headers)
    {
        xhr.setRequestHeader(key, headers[key])
    }
    xhr.send(null)
}



